2018.10.22 星期一
颗粒化
柯里化(英语:Currying),又称为部分求值,是把接受多个参数的函数变换成接受一个单一参数(最初函数的第一个参数)的函数,并且返回一个新的函数的技术,新函数接受余下参数并返回运算结果。
1 | var currying = function (fn) { |
1 提高适用性。
1 | function square(i) {return i * i;} |
$PS: 利用闭包,绑定
2 延迟执行
柯里化的另一个应用场景是延迟执行。不断的柯里化,累积传入的参数,最后执行。
1 | // # 0 简单:只能两个括号 $PS: 其实和第一条一样,利用闭包 |
3 固定易变因素。
1 | Function.prototype.bind = function(context) { |
函数记忆
1 | var isPrime1=(function(){ |
17:00